System and method for wireless device pairing

ABSTRACT

Embodiments of the present invention include a system and method for wirelessly identifying and validating an electronic device in order to initiate a communication process with another device or a service. In an embodiment, the system includes a portable biometric monitoring device that is identified by a client device or a server for the purpose of initiating a pairing process. In an embodiment, pairing implies pairing the portable device to an online user account with minimal user interaction. After pairing, the portable device and appropriate client devices and servers communicate with little or no user interaction, for example to upload sensor data collected by the portable device.

RELATED APPLICATIONS

This application is a division of U.S. patent application Ser. No.13/769,350, filed Feb. 17, 2013, and titled system and method forwireless device pairing, which is incorporated by reference in itsentirety herein. U.S. patent application Ser. No. 13/769,350 is relatedto U.S. patent application Ser. No. 13/156,304, filed Jun. 8, 2011, andtitled PORTABLE MONITORING DEVICES AND METHODS OF OPERATING SAME whichis incorporated by reference herein in its entirety. U.S. patentapplication Ser. No. 13/769,350 is further related to U.S. patentapplication Ser. No. 13/674,265, also titled PORTABLE MONITORING DEVICESAND METHODS OF OPERATING SAME, filed Nov. 11, 2012 which is a divisionof U.S. patent application Ser. No. 13/156,304, and which is alsoincorporated by reference herein in its entirety.

BACKGROUND

The use of wired and wireless portable electronic devices continues togrow. Individuals typically own and use multiple portable devices, eachof which has one or more particular functions, including cell phones,personal digital assistants, navigation devices, and body monitoring orfitness-oriented devices. These devices are often used in addition tonon-portable devices such as desktop computers. It is expected thatthese various devices can communicate with the Internet and/or with eachother for uploading and downloading data or otherwise transferring data.One example of a portable device that communicates with the internet andother devices is a monitoring device that is intended to be small andeasily worn on or about the body. When monitored data is collected bythe device, it is desirable to transfer the data (sometimes afteron-board processing and sometimes before on-board processing) to otherdevices so that the user can easily review the data or possibly operateon it. In order for a portable device to communicate with another deviceor for it to be associated with a user specific account, the device isusually initially paired to an online account and/or to another device.Typically, this involves authentication, and also identification orverification of the device to be paired. Authentication includesverifying that the user is authorized to access the account to whichdata will be uploaded from the device, or from which data will betransmitted. Identification of the device can include discovery of thedevice by client software (such as software on a personal computer (PC)in communication with a cloud-based server) that is programmed to lookfor specific identifying information. It is desirable to minimize theamount of user interaction and input required in the pairing process forease of use. This is particularly true of small devices which arepurposely designed to eliminate keyboards and multiple buttons in orderto satisfy other design criteria.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1-4 are block diagrams of portable device systems according tovarious embodiments.

FIGS. 5A-5F are block diagrams of user interfaces according to variousembodiments.

FIG. 6 is a block diagram of a portable monitoring device according toan embodiment.

FIG. 7 is a diagram illustrating a device pairing process according toan embodiment.

FIG. 8 is a flow diagram illustrating a process of pairing multipledevices according to an embodiment.

FIG. 9 is a flow diagram illustrating a process of pairing a singledevice according to an embodiment.

FIG. 10 is a block diagram of a configuration of a client and multipledevices according to an embodiment.

FIG. 11 is a block diagram of a configuration of a client and multipledevices according to an embodiment.

FIG. 12 is a block diagram of a configuration of a client and multipledevices according to an embodiment.

FIG. 13 is a signal diagram for a pairing operation according to anembodiment.

FIG. 14 is a continuation of the signal diagram of FIG. 13.

DETAILED DESCRIPTION

Embodiments of the present invention include a system and method forwirelessly identifying and validating an electronic device in order toinitiate a communication process with another device or a service. In anembodiment, the system includes a portable biometric monitoring devicethat is identified by a client device or a server for the purpose ofinitiating a pairing process. In an embodiment, pairing implies pairingthe portable device to an online user account with minimal userinteraction. After pairing, the portable device and appropriate clientdevices and servers communicate with little or no user interaction, forexample to upload sensor data collected by the portable device. In oneembodiment, the portable device is detected or discovered by a client orby a server when the device is in close enough proximity. The client orserver causes the portable device to indicate to the user that theclient or server wants to initiate a pairing process. For example, theportable device vibrates to indicate that the client or server isrequesting to pair. In an embodiment, the user taps the device on anypart of its surface to initiate the pairing process. Tapping includestouching the device on any part of its exterior. No particular locationor button needs to be touched for the user to make the user input.Tapping includes light touching once or multiple times. No additionaluser input is required to complete the pairing process. After pairing,the portable device is associated with a user account that stores datacollected by the portable device (data exclusive to the user). Theaccount also stores any personal information the user chooses to enter(for example via a web site). After pairing using a particular client(for example a cell phone), the client wirelessly communicates with theportable device, but not with other, similar portable devices that werenot paired. A Fitbit™ portable biometric monitoring device is used as anexample of a device in this disclosure, but the invention is not solimited. After the device is paired though a user's cell phone to a useraccount, the cell phone will communicate with the device, and also withany server in proximity, to exchange data. However, the cell phone willnot recognize the Fitbit™ devices of other users. In addition, theFitbit™ device of one user cannot access or communicate with the Fitbit™account of another user.

Pairing can include linking devices in order to send information betweendevices. Pairing also includes pairing between a device and a service.In a client-server embodiment, the method is used to pair a device withan account resident on a server through a client. In another embodiment,the method is used to pair a device directly to a server. A portablebiometric device is used as an example of a portable device that can bepaired according to the invention disclosed herein. However, theinvention is not limited to a portable biometric device. Throughout thisdisclosure by way of example, reference is made to a portable biometricmonitoring device, aspects of which are described and claimed incopending U.S. patent application Ser. No. 13/156,304, filed Jun. 8,2011, which is incorporated by reference in its entirety herein.

Devices which are not considered portable biometric devices, but may bepaired according to the invention disclosed herein include, but are notlimited to portable or non-portable devices such as weight scales, bodyfat scales, exercise equipment, blood glucose meters, pulse oximeters,blood pressure cuffs, and, in one embodiment mobile phones. The term“weight scale” is used to refer to a device having a platform capable ofsupporting the weight of a user. In an embodiment, a weight scalecontains multiple sensors including, but not limited to Body Impedanceor biomolecular-interaction analysis (BIA) sensors to measure body fat,weight sensors, ambient light sensors, and photoplethysmographicsensors.

The portable biometric monitoring device (also referred to herein simplyas “the device”) has a shape and size that is adapted to be easily wornabout the body of a user. It collects one or more types of physiologicaland/or environmental data from embedded sensors and/or external devicesand communicates or relays such information to other devices or otherinternet-viewable sources. While the user is wearing the device, itmonitors certain conditions through one or more sensors, and collectsdata from the sensors. For example, the device can calculate the user'sstep count from collected data, store the step count, then subsequentlytransmit user data representative of the step count to an account on aweb service (such as www.fitbit.com, for example) where the user data isstored and processed, and can be viewed by the user. Indeed, the devicemay monitor measure or calculate many other physiological metrics inaddition to, or in place of, the step count. These include, but are notlimited to, energy expenditure, floors climbed or descended, heart rate,heart rate variability, heart rate recovery, location and/or heading(e.g., using global positioning system (GPS) components), elevation,ambulatory speed and/or distance traveled, swimming lap count, bicycledistance and/or speed, blood pressure, blood glucose, skin conduction,skin and/or body temperature, electromyography, electroencephalography,weight, body fat, and respiration rate. The device may also measure orcalculate metrics related to the environment around the user such asbarometric pressure, weather conditions, light exposure, noise exposure,and magnetic field.

The device may incorporate one or more user interface methods such asvisual methods, auditory methods, or haptic methods (such as touch inputor vibration). The device may display the state of one or more of theinformation types available and/or being tracked. For example,information can be displayed graphically, or conveyed by the intensityand/or color of one or more light emitting diodes (LEDs). The userinterface may also be used to display data from other devices orinternet sources. The device may also provide haptic feedback to theuser through, for instance, the vibration of a motor or a change intexture or shape of the device.

The device may implement wireless communications so that when the userand device come within range of a wireless base station or access point,the stored data automatically uploads to an internet viewable sourcesuch as a website. Wireless communication may be achieved through one ora combination of methods known in the art such as Bluetooth, BluetoothSmart, radio frequency identification (RFID), near field communication(NFC), Zigbee, Ant, optical data transmission, etc. The device may alsocontain wired communication capability (e.g., universal serial bus(USB)).

Methods and apparatus for pairing of the device to a server through aclient, or to a server directly, are disclosed herein. In this document,the term “client” refers to client software or a client device thatprimarily acts as an access portal to a server. The term “server” refersto a server in communication, directly or indirectly, with one or moreof the device and the client. In pairing the wireless device to a servertwo actions should occur. First, the account that the device is to bepaired with is authenticated. Many authentication methods are currentlyused publicly, perhaps the most common being username and passwordauthentication. The second action to be performed is identification orverification of the specific device for which pairing is beingattempted. Embodiments of the invention relate to the second action.

FIGS. 1-4 are block diagrams of portable device systems according tovarious embodiments. Referring to FIG. 1, a system 100 includes a server106, and a laptop computer 104. A non-portable computing device such asa desktop computer or health station may be used in place of computer104. Computer 104 executes client software that recognizes andcommunicates with multiple portable devices 101. In this document,computer 104 and similar system elements that execute the clientsoftware are simply referred to as the client (e.g., client 104). As anexample of a device embodying the apparatus described herein andparticipating in the processes described herein, a Fitbit™ portablemonitoring device is shown as device 101. However, the apparatus andmethods herein are appropriate for many other devices that performvarious functions and communicate wirelessly, whether or not they areportable or have a small form factor.

A cell phone 102 is also part of system 100. As described further below,device 101 can be paired to cell phone 102 without the involvement of aserver 106, in which case cell phone 102 is effectively the server. Notethat a cell phone 102 may be replaced by any mobile computing deviceincluding but not limited to tablets, laptops and netbooks or anynon-mobile computing devices such as desktop computers and healthstations. Cell phone 102, in an embodiment, executes client software asa mobile application. Server 106 represents one or many network servers(e.g. internet servers) that store user data collected by device 101. Inan embodiment, server 106 also stores and administers user account data.In an embodiment, a device user has an account that allows the user toview and operate on user data through user interfaces managed by theserver 106. The user may access the user interfaces via a web sitehosted and administered by server 106, and/or by using a specific mobileapplication on one or more client devices such as device 102.

As indicated in FIG. 1, devices 101 are paired with client devices 104and/or 102 and these client devices are, in turn, in communication withserver 106 for the purpose of transferring data from the devices 101 toserver 106.

FIG. 2 is a block diagram of a system 200 including a device 101 and amobile phone 102. In this system configuration, cell phone 102 acts as aserver. This diagram also illustrates that the disclosed pairing canoccur directly to a server. Similarly, FIG. 3 is a block diagram of asystem 300 including a device 101 and a personal computer 104 such as alaptop, tablet, desktop computer, or health monitoring station. Personalcomputer 104 is also representative of any other computing devices,portable or non-portable that anyone reasonably skilled in the art couldenvision. In this context, computing device 104 is the server.

FIG. 4 is a block diagram of a system 400 including a device 101 and asecond, dissimilar device 103. In various embodiments, device 103 is aportable device that communicates wirelessly and is intended to performfunctions that are different from or complimentary to functionsperformed by device 101. As just one example, device 103 is a globalpositioning system (GPS) device that runs its own applications andoptionally communicates with its own servers, its own web site, and itsown user account. As another example, the devices 103 and 101 may nothave respective “accounts” per se, but may be linked or paired to oneanother through the methods disclosed herein.

FIGS. 5A-5F are block diagrams of user interfaces according to variousembodiments. FIG. 5A shows a user interface including a display. FIG. 5Bshows a user interface including a speaker. FIG. 5C shows a userinterface including a display and a speaker. FIG. 5D shows a userinterface including a display and an input mechanism. The inputmechanism includes (without limitation) one or more of buttons, knobs,switches, a microphone and a touch screen. FIG. 5E shows a userinterface including a display, a speaker, a vibramotor and an inputmechanism. FIG. 5F shows a user interface including a display, aspeaker, a vibramotor, and an input mechanism. The input mechanismincludes any or all of the elements from FIGS. 5D and 5E, and alsoincludes vibration and gesture recognition sensors.

FIG. 6 is a block diagram of a portable monitoring device 101 accordingto an embodiment. Device 101 includes the user interface 18, sensors602, processing circuitry 604, transmitter circuitry 608, and receivercircuitry 610. The portable monitor device contains sensors 602 that areused to sense signals generated by the physical world. From these sensedsignals, in one embodiment, the processing circuitry 604 calculatesmetrics associated with the user. These metrics may be related to sleepactivity (e.g., sleep phases, sleep quality, number of awakenings,duration, time), physical activity (e.g., steps, calorie burn, weighttraining, running distance and/or speed, etc.), physiological parameters(e.g., heart rate, blood glucose, blood oxygenation, blood pressure,skin conductance, skin temperature, body temperature, heart ratevariability, skin pigmentation, etc.), environmental parameters (e.g.,humidity, temperature, UV light level, ambient noise, air quality,location, barometric pressure), and/or derived parameters (e.g., stresslevel, health or fitness level, disease state, sitting vs. standing vs.lying down recognition, elevation, etc.). In an embodiment, the sensors602 include motion sensors such as an accelerometer, gyroscope, orpiezoelectric film that are used individually or in combination to sensephysical phenomena from which are calculate one or more of theaforementioned parameters. Sensors 602 also detect user inputs, such asa taps for example. In various embodiments, one or more a user taps issensed by an accelerometer when the user quickly touches any part of theexterior of the device. In other embodiments, a user tap is sensed by adifferent type of sensor rather than an accelerometer. The device isconfigurable to distinguish a user tap from other forms of contact withthe external world. In an embodiment, the device is “primed” or preparedto sense a user tap under certain predefined conditions, but that is nota requirement.

In another embodiment, the sensors 602 comprise motion sensors that aredesignated as an input mechanism to detect inputs such as a tap, but arenot utilized for the tracking of other user metrics. In yet anotherembodiment, user interactions such as taps may be detected by acapacitive touch sensor or audio sensor.

Another pairing operation that may be of interest to a user of awireless device is the linking of two or more portable devices toconnect online social network accounts and/or perform an online socialnetwork activity or action (e.g. “like”) with each of the devices. Dataother than online social network identity and/or online social networkactivity (e.g. “likes”) may also be transferred between devicesincluding but not limited to biometric data and contact information. Theportable devices need not be of the same type, or perform the sameprimary functions.

Client Determination of Devices Eligible for Pairing

The client may determine a subset of devices eligible for pairing beforethe user identifies the specific device that should be paired. This maybe accomplished by determining which devices are wirelesslycommunicating with the client. Communicating in this context may meanone party (device, client, server, set of devices, set of clients, orset of servers) broadcasting packets and the other party listening forand receiving packets (unidirectional communication). In unidirectionalcommunication, the party broadcasting may do this automatically withoutbeing aware of any listeners. Alternatively, the broadcasting party maybe aware of the listener through a variety of methods. In certain cases,the broadcasting party may tailor its communication to a specific otherparty or set of other parties. Communicating may also mean that bothparties are listening for and receiving packets either simultaneously orin some sequence (bidirectional communication). In an embodiment, aneven smaller subset of devices is created by choosing devices that havea certain minimum signal strength (e.g. as indicated by a receivedsignal strength indicator (RSSI) signal). In another embodiment, theclient chooses a subset of a class of wireless devices that are bothcommunicating to the client wirelessly and have high signal strength,which indicates physical proximity to the client. In this context,device class may refer to a set of device characteristics including butnot limited to model, sensor type, sensor set, manufacturer, andcharacteristics of the account associated with the device including butnot limited to account level (such as a “standard” account, or a premiumaccount that includes more features, typically for a fee) and usergender. In other embodiments, alternative machine-readable indicationsof physical proximity are used independently or together to determinewhich devices can be paired. These indications of physical proximity mayinclude but are not limited to NFC, RFID, GPS, Wi-Fi, Zigbee, Ant+,Bluetooth, BTLE, other radio network communication, optical detectioneither through machine vision, audio signals, optical data transmission,or the spectral signature of a light source on the device.

Information associated with the user's account may be used to determinewhich devices are eligible to be paired. This information may also beused in determining a device class. Information entered into the client,server, or a third entity in communication with either the client orserver, such as a web site may also be used to determine eligibility ordevice class. This information includes, but is not limited toinformation regarding a purchased device such as model number or othermodel identification, color, device serial number, unique deviceidentifier, battery level of the device, whether the device is alreadypaired, and the type or level of the user's account (such as a “normal”account, or a premium account that includes more features, typically fora fee). Other information regarding the user may include user gender,user age, and whether the user is human or non-human (e.g. a pet).

In another embodiment, the client, account, or server to which the userwould like to pair a device is compatible only with a certain deviceclass. In such a case, the device class limitations of the client oraccount can be used as eligibility criteria. For example, if a user hasan account associated with a corporate wellness program that only allowsa specific model of device, only the allowed model is consideredeligible for pairing. This is useful in a wellness program to make surethat participants in the program use devices approved by theadministrators of the program. Approval of a device can be based ondevice model characteristics such as accuracy, precision, samplingfrequency, and/or types of data which the device can track. In anotherexample, a client is able to administer only a specific set of devices.For example, assume that an iPhone is a client that can communicate witha device, but cannot synchronize (sync) its data to a server. In such acase, the device can be determined to be ineligible for pairing.

In another embodiment, the device and/or client are capable of creatingand/or detecting vibrations, for example with a vibramotor and anaccelerometer. Proximity can be determined from the strength of thevibration signal from either the device to the client or the client tothe device. Data can also be transferred using this method as a physicalnetwork transport layer. For example, bits could be encoded in physicalvibration patterns which are detected by the accelerometer of areceiving device. In one embodiment, the device is placed on or next toa computing device running a client (such as a laptop or smartphone) inorder to transfer data and/or determine device proximity. Vibrationcould also be transferred from device to device through physical contactof their outer cases or through an intermediary such as a tabletop ordesk.

In one embodiment, the client does not proceed with pairing until thesubset of devices is narrowed down to a single device as determined bybest signal strength. If two or more devices are a similar distance fromthe client transceiver, causing them to have similar signal strengths,the client cues the user to move the device that they want to paircloser to the transceiver than the other devices. Then the client againlooks for a single device with a signal strength significantly higherthan any other devices, and if it find such a device, continues with thepairing process.

In another embodiment, the client proceeds with the pairing process evenif there are multiple devices eligible for pairing. This is useful whenthere is one client attempting to pair many devices. In a case wherethere is more than one client attempting to pair nearby devices at thesame time, the previous embodiment may prove to be a more robust pairingprocess.

Once the client has chosen which device or set of devices is eligible tobe paired, it prompts each chosen device to indicate its eligibility tobe paired. Chosen devices can indicate eligibility to be paired in oneor more manners including, but not limited to vibration, illumination,sound, displayed message, or displayed symbol.

User Interacts with Device to Identify and Verify that it Should bePaired

The device conveys to the user its eligibility to be paired byvibrating, lighting up, making a sound, displaying a message, or any oneof multiple indications available in the art. The user chooses thedevice to be paired by interacting with the device once he hasrecognized that the device is conveying it eligibility to be paired. Inone embodiment, the user causes the device to communicate its readinessto be paired (also referred to as validation) to a client or server bytapping or double tapping the device. The device senses a tap on anypart of its exterior as a validation input from the user.

Other validation interactions include, but are not limited to multipletaps of the device, pressing a button, picking up the device, performinga gesture holding or wearing the device, either touching or performing agesture on a touch sensitive part of the device, and entering some dataabout the device or displayed on the device into the client (e.g.entering a code displayed on the device into the client). In otherembodiments, the device displays a code. The code is variously createdby the device, the client, or the server, or is an algorithmiccombination of codes from one or more of these sources. In one example,the server sends the device a code which is algorithmically combinedwith one or more codes created and/or resident on the device. Thisalgorithmic combination is sent back to the server. The device candisplay one or more of these codes or algorithmic combinations of codes.In an embodiment, the client prompts the user to enter the code(s)displayed. The code that the user enters is used by the server asvalidation that the user wants to pair that specific device, and alsothat the user has the device in his possession. Codes include any typesof codes as known in the art, such as random codes, pseudo-random codes,and non-random codes such as a serial numbers or other deviceidentifiers. In various embodiments, a code can change with time, remainthe same, or be unique to each session (e.g. pairing session). Use ofcodes as just described is just one embodiment. Use of codes in this wayis not required. In other embodiments codes can be communicated withoutinvolvement of the user. For example, the device my transmit codes forthe paring process by encoding device vibrations, or any other wirelessor wired form of communication.

For validation, the user can interact with the device once or multipletimes, or until the device gives feedback to the user acknowledging theinteraction. Feedback from the device includes, but is not limited to,haptic feedback, vibration, illumination, sound, or a displayed messageor symbol. In another embodiment, the lack of any of the above feedbackindicates that the device has been successfully validated or identifiedfor pairing.

In an embodiment, the device lights up once the client determines thatthe device is eligible to be paired. The device continues to light upuntil it detects the user tapping the device, at which point the devicevibrates and then extinguish its lights. At this point the device issuccessfully identified for pairing, and the device and clientcommunicate to complete pairing.

FIG. 7 is a diagram illustrating a device pairing process according toan embodiment. As shown at 1, the client 104 (through a user interface)asks the user whether or not to pair the new device that has beendetected. At 2, the client asks the user to confirm consent to thepairing process by tapping the device. At 3, the user taps the device,which causes the pairing operation to begin. The progress of the pairingoperation may be displayed on a user interface of the device 101, andstatus may also be indicated by the user interface of client 104.

FIG. 8 is a flow diagram illustrating a process of pairing one ormultiple devices according to an embodiment. At 802 the user logs intohis or her user account. The user logs in with any client as describedherein, such as a mobile phone or a computer. At 804, the clientrequests a response from nearby devices. In another embodiment, at 804the client listens for any devices that are automatically broadcasting,allowing the client to determine which devices are nearby (close enoughto communicate for the pairing process). Devices 101 that are nearbyrespond (806) automatically, including indicating their identity, forexample by transmitting a device serial number, media access control(MAC) address, unique device identification (UDID), international mobileequipment identifier (IMEI), universally unique identifier (UUID), keysor any other data that can identify a unique device or unique set ofdevices. The client determines which devices are eligible for pairing at808. As previously described “client” implies either a computer, mobilecomputing device such as a smartphone, a server, or some combination ofthe three. Pairing eligibility is determined by one or more criteriaincluding but not limited to those already disclosed. The clientcommands identified eligible devices to cue the user to tap the device(810). The device responds to the command by communicating with the userin one or more ways, including vibrating, lighting up, and displaying amessage (812). The device continues communicating to the user until theuser taps the device; then the device tells the client that it hasreceived the tap input from the user (814). The pairing process is thencompleted by the client, device and possibly the server (816). When thepairing process is complete, this is indicated through the userinterface of one or more of the client, internet web site, and thedevice (818).

FIG. 9 is a flow diagram illustrating a process of pairing a singledevice according to an embodiment. At 902 the user logs into his or heruser account. The user logs in with any client as described herein, suchas a mobile phone or a computer. At 904, the client requests a responsefrom nearby devices. In another embodiment, at 904 the client listensfor any devices which are automatically broadcasting, allowing theclient to determine which devices are nearby. Devices 101 that arenearby respond (906) automatically, including indicating their identity,for example by transmitting a device serial number, MAC address, UDID,IMEI, UUID, keys, or any other data that can identify a unique device orunique set of devices. The client determines which devices are eligiblefor pairing at 908. As previously described “client” implies either acomputer, mobile computing device such as a smartphone or a server, orsome combination of the three. Pairing eligibility is determined by oneor more criteria including but not limited to those already disclosed.

In some situations a single device is eligible for pairing (910), and inother situations multiple devices are eligible for pairing (912). Whenthere is one device eligible for pairing, the client commands theeligible device to cue the user to tap the device (916). The deviceresponds to the command by communicating with the user in one or moreways, including vibrating, lighting up, and displaying a message (918).The device continues communicating to the user until the user taps thedevice; then the device tells the client that it has received the tapinput from the user (920). The pairing process is then completed by theclient, device and possibly the server (922). When the pairing processis complete, this is indicated through the user interface of one or moreof the client, internet website, and device (924).

In one embodiment, when there is more than one device eligible forpairing (912), the client cues the user (through the user interface aspreviously described) to move the device to be paired closer to theclient, and to move other devices away from the client (914). Theprocess then returns to 904, where the client requests a response fromnearby devices.

FIG. 10 is a block diagram of a configuration of a client and multipledevices according to an embodiment. FIG. 10 shows area 1000 inside ofwhich devices 101 are nearby devices that are detectable by client 104using a wireless communication dongle 1002. Other devices 101 are shownoutside of area 1000. The devices 101 inside area 1000, in oneembodiment, are vibrating to indicate to the user that pairing is beingrequested. FIG. 10 corresponds to a method of pairing described in FIG.8.

FIG. 11 is a block diagram of a configuration of a client and multipledevices according to an embodiment. This diagram illustrates a processin which the client 104 asks the user of devices 101 to move outside ofarea 1000 those devices that are not to be paired at this time. FIG. 11corresponds to a method of pairing described in FIG. 9.

FIG. 12 is a block diagram of a configuration of a client and multipledevices according to an embodiment. In this diagram, the user has movedall of the devices 101 outside area 1000 except the single device 101 tobe paired.

FIG. 13 is a signal diagram of one embodiment of a pairing communicationinvolving a device 101, a client 102 (or 104) and a server 106. Readingthe diagram from the top, when a user logs into his or her user account,or creates a user account, the client tells the server to begin apairing process. The server provides the user interface for pairing ortells the client to display the user interface for pairing. The clientrequests responses from nearby devices. In an embodiment, the request isa broadcast signal expected to be recognized by the intended devices.Intended devices within range respond to the client with theirrespective identity information. The client relays the device identityinformation to the server. When more than one device responds, therelayed information includes a list of devices. The relayed informationalso includes all of the information received for each device, which caninclude RSSI, unique identifiers, etc. From this relayed information theserver determines which devices are eligible for pairing. Anidentification of the eligible devices is sent to the client. Thisidentification can be one or more items of information, including butnot limited to a unique identifier, and the corresponding RSSI. To eachof the eligible devices, the client sends a command to enter pairingmode. The receiving devices enter pairing mode, including cuing the userto consent to pairing, as described herein. In an embodiment, the usertaps the device to consent to, and initiate, pairing. In an embodiment,the cue to the user is device vibration, but any other cue can be used,such as illumination of the device, a sound, etc.

FIG. 14 is a signal diagram continuing to illustrate the pairingcommunication involving the device 101, the client 102 (or 104) and theserver 106. The user tap is detected by device sensor, causing thedevice to signal the client, and the client returns a device informationrequest to the device. The device responds by sending the client therequested device information as well as a “tapped” flag. This deviceinformation and the flag are transmitted to the server by the client.The server uses the device information to associate the device with auser account. The server then accesses user information (as previouslycalculated or entered by the user into the account). The userinformation can include any of the items previously described, such asheight, weight, stride length, etc. The server sends the userinformation to the client along with a device data request. The serverforwards the user information and device data request to the device. Thedevice responds with device data, which is forwarded from the client tothe server. The server now has the data required to complete the pairingprocess. When the process is complete, the server sends a “pairingcomplete” notification to the client. FIGS. 13 and 14 are representativeof but one example set of communications. As previously discussed, therecan be many variations within the scope of the invention as claimed,including a direct device-server communication, omitting the client, andvarious methods of notifying the user and of receiving user input. Inscenarios in which a cell phone (for example, as in FIG. 2) acts as theserver, data from the device-cell phone communication can be uploaded ata later time to yet another, remote server.

Client/Device Pairing Initialization and Completion

To complete pairing in an embodiment, the validated device sends aspecial code to the client and/or server indicating that the userverified their desire to pair that specific device. Final pairing stepsthen proceed between the device, client and/or server. In an embodiment,these steps include the transfer of user data from the client or serverto the device. User data includes, but is not limited to, gender,height, stride length, weight, body mass index (BMI), basal metabolicrate (BMR), goal data (e.g. a daily step or calorie goal), serveraccount information (e.g., information from an online account throughwhich the user can view and manipulate data recorded by their device),age, location, and historical user data such as the number of caloriesburned in the last month, week, or day. In an embodiment, the userenters various user data when setting up or modifying his or her accountthrough a user interface on a client device. These pairing steps mayalso include the transfer of device data to the client and/or serversuch as device serial number, model, media access control (MAC) address,time of manufacture, manufacturing batch, and any calibration data.

The completion of pairing can be indicated on the client and/or thedevice in a variety of manners. For example, the device can vibrate,light up, play a sound, display a message, or display a symbol. A laptopor PC client can also indicate completion of paring in one or more ofthe foregoing manners. Successful pairing can also be indicated on auser account hosted by the server and accessible through a web browseror internet-connected application on a PC or mobile computing devicesuch as a smartphone or tablet.

Peer to Peer Device Pairing

Two or more devices may be paired without the use of a client. This isreferred to herein as “linking”. In one embodiment, the user interactswith the device to turn on a linking mode. In the linking mode, theinitiator device sends out a signal to devices within wirelesscommunication range requesting to link with them. Receiving devices mayindicate that they are ready to be linked in one or a combination of thefollowing manners: vibration, illumination, sound, displayed message, ordisplayed symbol. The user or users then indicate that they perceive theindication by performing a validation interaction such as the oneslisted above (e.g., tapping the device anywhere on its surface). Oncevalidated, the devices communicate with the initiator device to exchangedata.

In another embodiment, the linking is performed without the user havingto set one or more devices to a linking mode. In such a case, the usersperform one or more gestures associated with linking. In one embodiment,two users may tap their two devices together. After tapping them, thedevices may ask the user to confirm the linking through an indicationsuch as the ones listed above. The user confirms the linking byperforming a second interaction with the device such as those listedabove, for example by tapping the devices again.

Instead of tapping the two devices together as in the first part of thepreviously described process, an NFC tag, RFID tag or other wirelesscommunication protocol may be used. In such an embodiment, two or moreusers move their devices within a close enough proximity for one or moreof the devices to detect one or more of the other device's passive oractive NFC tags. The devices then communicate over NFC, an alternativewireless communication method, or a combination of any availablewireless communication methods. To verify that the users would like tocomplete the linking process, the devices cue the users to tap orinteract with their devices through any of the described methodsincluding but not limited to tapping the device, pressing a button,performing a gesture on a touch screen, touching a capacitive touchsensor, or performing a gesture with the device. Once the user validatesthe linking, the devices complete any communication necessary tofinalize the linking.

In one embodiment, this clientless device-to-device linking processallows two users to activate an online social network connection. Thetwo devices are linked as described above so as to exchange socialnetwork credentials and/or perform an online social network action oractivity (e.g. “like”). After linking, the next time either one of thedevices is connected to the internet, the device signals the user'saccount to create a social link to the user of the linked device orperform a social network action or activity (e.g. “like”). The user ofthe linked device is associated with the social network credentialsreceived from linked device.

Automatic Pairing Initiation for Unpaired Devices

In another embodiment, the portable biometric monitoring device isplaced in close proximity to a computer, which causes an application tobe launched on the computer. The term computer, in this context, is usedto describe any electronic computing device such as a mobile phone,tablet computer, PC, desktop computer, or other biometric monitoringdevice (e.g., a smart weight scale). Close proximity may be detectedthrough a number of technologies such as NFC, Bluetooth (e.g., by signalstrength), or the magnetic signature of the device as detected by amagnetometer in the computer. If the device is determined to be in anunpaired state, the application initiates the pairing process includingwirelessly signaling the device. Wirelessly signaling the device placesthe device in a pairing mode and this is conveyed to the user through,for instance, a change in the visual display of the device and/orvibrating a motor within the device. The user can then complete thelinking process by tapping the device (as previously described). Thedevice can be paired to the computer itself or to an online service(e.g., an account on www.fitbit.com). Determination of the unpairedstate of the device can be done by the device knowing its state (e.g.,the device knows that it is in factory state) or by the applicationquerying a database of known devices (e.g., by discovering and lookingup the serial number of the device).

Pairing with Minimal Interaction or No Interaction

In another embodiment, the client automatically pairs a device if thedevice and the user meet a certain requirement or set of requirements.These requirements may include, but are not limited to the device havingnever been paired before, the user having never paired a device before,the device being in the proximity of the client as determined by anyvariety of methods discussed in this disclosure, and the user's accounthaving been created within a defined time frame. In one embodiment, whena user brings a single unpaired or new device within range of a clientassociated with a user account that does not already have a devicepaired to it, the device will automatically be paired to the account. Inanother embodiment, if a user brings a single unpaired or new devicewithin range of a client associated with a user account which does notalready have a device paired to it, the client will ask the user if theywant to pair the device. If the user agrees to pair the device, the restof the pairing process completes automatically without furtherinteraction from the user.

In another embodiment, the user is not required to have an account toautomatically pair a device. In one such case, the only requirement forautomatic pairing is that the device is unpaired or new. Suppose theuser has purchased a new, unpaired device. The client asks the user forsome information that will later be used to create an account, thenproceeds to pair the device, and then creates the account afterwards.This demonstrates that the user need not have an account for pairing tooccur. An account can be associated with a device that is alreadypaired, or with a device that is not yet paired. In other embodiments,there is no account per se associated with the device or user.

Automatic Account Customization

It may be desirable to automatically customize the account associatedwith a device before, during, or immediately after pairing. In oneembodiment, a specific set of devices are registered with an accountadministrator, such as a server, to automatically enable, disable, ormodify account characteristics. For example, a set of devices to bedistributed or sold to participants in a corporate wellness program isregistered with the account server before the devices are paired. Thedevices can be registered using unique device identifiers such as serialnumbers. In an embodiment, when the eventual users of thesepre-registered devices log into the appropriate web site or create anaccount linked to the device, the account server can automaticallyenroll them in a corporate wellness program. In another example, devicesto be sold or distributed within a country or geographic area associatedwith a single language can be pre-registered with the account server.When a user creates an account, or links an account to one of thesepre-registered devices, the user's account defaults to the languageassociated with the user's country or geographic area.

In another embodiment, the device is programmed to notify the pairingclient or server to modify account characteristics before, during orafter pairing. For example, all devices to be distributed toparticipants in a corporate wellness program group are preprogrammed tocommand the pairing client to enroll the account associated with thedevice to the corporate wellness program.

In another embodiment, the client or server modifies accountcharacteristics based on device characteristics acquired before, during,or after pairing. For example, the layout and/or content of a user'saccount may automatically change depending on the device modelassociated with it. A device model that tracks steps and distance, butnot floors may cause the user's account to display only steps anddistance tracked, even though other device models may be able to trackfloors. The user's account may also display advertisements ornotifications for devices that have different or additional featuresdepending on the device model paired to the account.

In another embodiment, the client or server modifies accountcharacteristics based on user characteristics acquired before, during,or after pairing. For example, if a user enters information aboutthemselves during the pairing process such as gender, the user's accountdisplays a specific appearance associated with the gender. Otherinformation a user can enter about themselves includes, but is notlimited to height, weight, age, date of birth, and location. Aspects ofthe systems and methods described herein may be implemented asfunctionality programmed into any of a variety of circuitry, includingprogrammable logic devices (PLDs), such as field programmable gatearrays (FPGAs), programmable array logic (PAL) devices, electricallyprogrammable logic and memory devices and standard cell-based devices,as well as application specific integrated circuits (ASICs). Some otherpossibilities for implementing aspects of the system include:microcontrollers with memory (such as electronically erasableprogrammable read only memory (EEPROM)), embedded microprocessors,firmware, software, etc. Furthermore, aspects of the system may beembodied in microprocessors having software-based circuit emulation,discrete logic (sequential and combinatorial), custom devices, fuzzy(neural) logic, quantum devices, and hybrids of any of the above devicetypes. Of course the underlying device technologies may be provided in avariety of component types, e.g., metal-oxide semiconductor field-effecttransistor (MOSFET) technologies like complementary metal-oxidesemiconductor (CMOS), bipolar technologies like emitter-coupled logic(ECL), polymer technologies (e.g., silicon-conjugated polymer andmetal-conjugated polymer-metal structures), mixed analog and digital,etc.

It should be noted that the various functions or processes disclosedherein may be described as data and/or instructions embodied in variouscomputer-readable media, in terms of their behavioral, registertransfer, logic component, transistor, layout geometries, and/or othercharacteristics. Computer-readable media in which such formatted dataand/or instructions may be embodied include, but are not limited to,non-volatile storage media in various forms (e.g., optical, magnetic orsemiconductor storage media) and carrier waves that may be used totransfer such formatted data and/or instructions through wireless,optical, or wired signaling media or any combination thereof. Examplesof transfers of such formatted data and/or instructions by carrier wavesinclude, but are not limited to, transfers (uploads, downloads, e-mail,etc.) over the internet and/or other computer networks via one or moredata transfer protocols (e.g., HTTP, FTP, SMTP, etc.). When receivedwithin a computer system via one or more computer-readable media, suchdata and/or instruction-based expressions of components and/or processesunder the system described may be processed by a processing entity(e.g., one or more processors) within the computer system in conjunctionwith execution of one or more other computer programs.

Unless the context clearly requires otherwise, throughout thedescription and the claims, the words “comprise,” “comprising,” and thelike are to be construed in an inclusive sense as opposed to anexclusive or exhaustive sense; that is to say, in a sense of “including,but not limited to.” Words using the singular or plural number alsoinclude the plural or singular number respectively. Additionally, thewords “herein,” “hereunder,” “above,” “below,” and words of similarimport refer to this application as a whole and not to any particularportions of this application. When the word “or” is used in reference toa list of two or more items, that word covers all of the followinginterpretations of the word: any of the items in the list, all of theitems in the list and any combination of the items in the list.

The above description of illustrated embodiments of the systems andmethods is not intended to be exhaustive or to limit the systems andmethods to the precise forms disclosed. While specific embodiments of,and examples for, the systems components and methods are describedherein for illustrative purposes, various equivalent modifications arepossible within the scope of the systems, components and methods, asthose skilled in the relevant art will recognize. The teachings of thesystems and methods provided herein can be applied to other processingsystems and methods, not only for the systems and methods describedabove.

The elements and acts of the various embodiments described above can becombined to provide further embodiments. These and other changes can bemade to the systems and methods in light of the above detaileddescription.

In general, in the following claims, the terms used should not beconstrued to limit the systems and methods to the specific embodimentsdisclosed in the specification and the claims, but should be construedto include all processing systems that operate under the claims.Accordingly, the systems and methods are not limited by the disclosure,but instead the scope of the systems and methods is to be determinedentirely by the claims.

While certain aspects of the systems and methods are presented below incertain claim forms, the inventors contemplate the various aspects ofthe systems and methods in any number of claim forms. For example, whileonly one aspect of the systems and methods may be recited as embodied inmachine-readable medium, other aspects may likewise be embodied inmachine-readable medium. Accordingly, the inventors reserve the right toadd additional claims after filing the application to pursue suchadditional claim forms for other aspects of the systems and methods.

1. A portable monitoring system, comprising: a first device configurableto communicate wirelessly with a second device, wherein at least one ofthe first device and the second device comprises a portable monitoringdevice comprising, wireless transmitter circuitry; wireless receivercircuitry; a plurality of sensors configurable to sense a plurality ofphysical phenomena; user interface means for communicating to a user,wherein the user interface means comprises one or more of a screen, atouch screen, a vibramotor, a keyboard, light emitting diodes (LEDs),and buttons; and processing circuitry configurable to interpret datafrom the plurality of sensors; and wherein to communicate wirelesslycomprises, the first device automatically discovering the second deviceby wireless communication; the first device and the second deviceautomatically communicating to start a pairing process comprising, thesecond device cueing the user via the user interface to validate arequest to pair; the second device receiving input from the user torespond to the request, wherein the input is received by one or more ofthe plurality of sensors; and the first device and the second devicecompleting the pairing process while remaining remote from each other.2. The system of claim 1, wherein the plurality of sensor comprises amotion sensor comprising at least one of an accelerometer, a gyroscopesensor, a microphone, an altimeter, and a magnetometer, and wherein theuser response to the cue is detectable by the motion sensor.
 3. Thesystem of claim 1, further comprising a client device configurable tocommunicate with the portable monitoring device on behalf of a server,and to communicate data from the portable monitoring device to theserver.
 4. The system of claim 3, wherein the client device comprises aclient software application.
 5. The system of claim 3, wherein theserver device comprises a mobile phone.
 6. The system of claim 1,wherein pairing comprises pairing the portable monitoring device with aweb based user account accessible through a web site as part of a setupprocess, wherein user data, including data entered by the user using theweb site, is downloaded to the portable monitoring device.
 7. The systemof claim 2, wherein the processing circuitry is further configurable toprocess data from the plurality of sensors to generate a plurality ofbiometric data based on user physical activity, and wherein afterpairing, the biometric data is automatically uploaded to the server whenthe device is in wireless communication range with one or more of theserver and a client acting on behalf of the server.
 8. The system ofclaim 1, wherein the plurality of sensors comprises at least one of anaudio sensor, an accelerometer, altimeter, photoplethysmograph,magnetometer, Global Positioning System sensor, thermometer, and agyroscope.
 9. The system of claim 8, wherein the processor operates ondata from the plurality of sensors to generate one or more of number ofsteps taken, amount of elevation gained, and distance traversed.
 10. Thesystem of claim 8, wherein cueing comprises causing the device toperform at least one of vibrating, illuminating, making a sound, anddisplaying a message.
 11. The system of claim 3, wherein the server isfurther configurable to discover multiple portable monitoring devices inproximity for pairing, and to communicate with the user through a clientuser interface asking that the user choose one of the multiple devicesto be paired.
 12. The system of claim 11, wherein asking the userfurther comprises asking the user to move the chosen device closer tothe client and move the other devices farther away from the client.13-16. (canceled)
 17. The system of claim 1, wherein receiving inputfrom the user to respond to the request comprises an accelerometersensing the user tapping the second device anywhere on its exteriorsurface without the user entering any data.